= P [ X N k = y k. P XN k+1 = y k 1 X N k = y k. XN = y 0 X N 1 = y 1 = π(y k ) p(y k, y k 1 ) p(y 1, y 0 ) = π(y 0 ) ˆp(y 0, y 1 ) ˆp(y k 1, y k ),

Σχετικά έγγραφα
= P. X0 = x 0, X 1 = x 1,..., X k = x k. π n = π 0 (P n 1 P ) = (π 0 P n 1 )P = π n 1 P, π n 1 (y)p(y, x) x X π(x) = 1. (5.5)

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ Αίθουσα Νέα Κτίρια ΣΗΜΜΥ Ε.Μ.Π.

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

π 2n+1 (A) = P [ X 2n+1 = A X 0 = A ] = 0 1/4.

π 2n+1 (A) = P [ X 2n+1 = A X 0 = A ] = 0 1/4.

6. Στατιστικές μέθοδοι εκπαίδευσης

Αριθμητικές Προσομοιώσεις του πρότυπου ISING στις Τρεις Διαστάσεις

f(t) = (1 t)a + tb. f(n) =

Αριθμητική Ανάλυση και Εφαρμογές

Γιατί πιθανότητες; Γιατί πιθανότητες; Θεωρία πιθανοτήτων. Θεωρία Πιθανοτήτων. ΗΥ118, Διακριτά Μαθηματικά Άνοιξη 2017.

ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ - ΠΡΟΣΟΜΟΙΩΣΗ

Νικος Χαλιδιας Μαθηματικό Τμήμα κατεύθυνση Στατιστικής και Αναλογιστικών-Χρηματοοικονομικών Μαθηματικών Πανεπιστημιο Αιγαιου

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων 1ο Σετ Ασκήσεων - Λύσεις

Περιεχόμενα. Κεφάλαιο 1 ΣΥΣΤΗΜΑΤΑ ΣΥΝΤΕΤΑΓΜΕΝΩΝ ΣΕ ΜΙΑ ΕΥΘΕΙΑ Οι συντεταγμένες ενός σημείου Απόλυτη τιμή...14

Μαθηματικά Πληροφορικής Πιθανοτικά Εργαλεία. Υποπροσθετικότητα. Η Πιθανοτική Μέθοδος (The Probabilistic Method)

ΣΤΟΧΑΣΤΙΚΕΣ ΔΙΕΡΓΑΣΙΕΣ & ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ» - 6/2/2014 Διάρκεια Εξέτασης: 2 ώρες και 50 λεπτά Ομάδα Α

Συνήθεις διαφορικές εξισώσεις προβλήματα οριακών τιμών

Μπεϋζιανή Στατιστική και MCMC Μέρος 2 ο : MCMC

Αλγόριθμοι για αυτόματα

ΗΥ-217-ΠΙΘΑΝΟΤΗΤΕΣ-ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2016 ΔΙΔΑΣΚΩΝ: ΠΑΝΑΓΙΩΤΗΣ ΤΣΑΚΑΛΙΔΗΣ


1 + ρ ρ ρ3. iπ i = Q = λ λ i=0. n=0 tn. n! Qn, t 0

E(G) 2(k 1) = 2k 3.

Pr(10 X 15) = Pr(15 X 20) = 1/2, (10.2)

Πιθανοτικός Συμπερασμός: Πού βρίσκομαι στο πλέγμα; [ΠΛΗ 513] Αυτόνομοι πράκτορες - Project Εξαμήνου ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ

d k 10 k + d k 1 10 k d d = k i=0 d i 10 i.

ΚΕΦΑΛΑΙΟ 2: ΟΡΙΖΟΥΣΕΣ

1 Η εναλλάσσουσα ομάδα

Τυχαία μεταβλητή (τ.μ.)

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

Μαρκοβιανές Αλυσίδες

f(y) dy = b a dy = b a x f(x) dx = b a dx = x 2 = b2 a 2 2(b a) b a dx = = (a2 + ab + b 2 )(b a) 3(b a)

Περιεχόμενα 1 Πρωτοβάθμια Λογική Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) / 60

pdf: X = 0, 1 - p = q E(X) = 1 p + 0 (1 p) = p V ar(x) = E[(X µ) 2 ] = (1 p) 2 p + (0 p) 2 (1 p) = p (1 p) [1 p + p] = p (1 p) = p q

Αριθμητική Ανάλυση & Εφαρμογές

> ln 1 + ln ln n = ln(1 2 3 n) = ln(n!).

pdf: X = 0, 1 - p = q E(X) = 1 p + 0 (1 p) = p V ar(x) = E[(X µ) 2 ] = (1 p) 2 p + (0 p) 2 (1 p) = p (1 p) [1 p + p] = p (1 p) = p q

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ Τμήμα Φυσικής Σημειώσεις Ανάλυσης Ι (ανανεωμένο στις 5 Δεκεμβρίου 2012)

Στοχαστικές Ανελίξεις (3) Αγγελική Αλεξίου

4. ΚΕΦΑΛΑΙΟ ΕΦΑΡΜΟΓΕΣ ΤΟΥ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΥ FOURIER

z 1 E(G) 2(k 1) = 2k 3. x z 2 H 1 H 2

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ

Εισαγωγή Η Θεωρία Πιθανοτήτων παίζει μεγάλο ρόλο στη μοντελοποίηση και μελέτη συστημάτων των οποίων δεν μπορούμε να προβλέψουμε ή να παρατηρήσουμε την

= P = P. = P [ X 0 = x 0, X 1 = x 1,..., X k = x k. Xn = x 0. Xn+1 = x 1 X n = x 0. Xn+k = x k X n+k 1 = x k 1 = π 0 (x 0 )p(x 0, x 1 ) p(x k 1, x k )

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΣΗΜΕΙΩΣΕΙΣ ΓΡΑΜΜΙΚΗΣ ΑΛΓΕΒΡΑΣ. ρ Χρήστου Νικολαϊδη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ

Φεργαδιώτης Αθανάσιος ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ ΣΤΗΝ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. Θέμα 2 ο (150)

Υπολογιστικά & Διακριτά Μαθηματικά

Στατιστική Περιγραφή Φυσικού Μεγέθους - Πιθανότητες

Πεπερασμένες Διαφορές.

Αριθμητική εύρεση ριζών μη γραμμικών εξισώσεων

M. J. Lighthill. g(y) = f(x) e 2πixy dx, (1) d N. g (p) (y) =

Μεταθέσεις και πίνακες μεταθέσεων

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

p q 0 P =

ΔΕΣΜΕΥΜΕΝΕΣ Ή ΥΠΟ ΣΥΝΘΗΚΗ ΠΙΘΑΝΟΤΗΤΕΣ

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

Σημειωματάριο Δευτέρας 4 Δεκ. 2017

Στοχαστικές Ανελίξεις- Ιούλιος 2015

Εφαρμοσμένη Στατιστική Δημήτριος Μπάγκαβος Τμήμα Μαθηματικών και Εφαρμοσμένων Μαθηματικών Πανεπισ τήμιο Κρήτης 14 Μαρτίου /34

0x2 = 2. = = δηλαδή η f δεν. = 2. Άρα η συνάρτηση f δεν είναι συνεχής στο [0,3]. Συνεπώς δεν. x 2. lim f (x) = lim (2x 1) = 3 και x 2 x 2

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Στοχαστικές Στρατηγικές

Γραμμικός Προγραμματισμός Μέθοδος Simplex

1. Τι είναι η Κινηματική; Ποια κίνηση ονομάζεται ευθύγραμμη;

Μορφές αποδείξεων. Μαθηματικά Πληροφορικής 2ο Μάθημα. Μορφές αποδείξεων (συνέχεια) Εξαντλητική μέθοδος

i=1 i=1 i=1 (x i 1, x i +1) (x 1 1, x k +1),

Εισαγωγή στη θεωρία πληροφορίας

Κίνηση ΚΕΦΑΛΑΙΟ 2 Β ΓΥΜΝΑΣΙΟΥ

Διακριτός Μετασχηματισμός Fourier

Περίληψη ϐασικών εννοιών στην ϑεωρία πιθανοτήτων

ΚΕΦΑΛΑΙΟ 3ο ΤΥΧΑΙΟΙ ΑΡΙΘΜΟΙ ΕΛΕΓΧΟΣ ΤΥΧΑΙΟΤΗΤΑΣ

Σημειωματάριο Δευτέρας 30 Οκτ. 2017

Περιεχόμενα 2ης Διάλεξης 1 Σύνοψη προηγούμενου μαθήματος 2 Αξιωματικός ορισμός και απαρίθμηση 3 Διατάξεις - Συνδυασμοί 4 Παραδείγματα υπολογισμού πιθα

ΘΕΜΑ 2. βρείτε. (Μονάδες 15) με διαφορά ω.

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

Σ ΤΑΤ Ι Σ Τ Ι Κ Η. Statisticum collegium iv

Α Λυκείου Άλγεβρα Τράπεζα Θεμάτων Το Δεύτερο Θέμα

Σ ΤΑΤ Ι Σ Τ Ι Κ Η ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

MEM 253. Αριθμητική Λύση ΜΔΕ * * *

Παραδείγματα Ιδιοτιμές Ιδιοδιανύσματα

a n = 3 n a n+1 = 3 a n, a 0 = 1

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ

10.1 Υπολογίσιμες συναρτήσεις και αναδρομικά σύνολα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΣΤΑΤΙΣΤΙΚΗ ΤΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ. Κεφάλαιο 8. Συνεχείς Κατανομές Πιθανοτήτων

Για την τοπική μελέτη μιας συνάρτησης f ενδιαφέρον έχει η συμπεριφορά της συνάρτησης γύρω απο κάποια θέση x 0

ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ ΜΑΘΗΜΑΤΙΚΑ Β ΓΥΜΝΑΣΙΟΥ. ΜΕΡΟΣ 1ο ΑΛΓΕΒΡΑ

ΕΦΑΡΜΟΓΕΣ - ΑΣΚΗΣΕΙΣ ΘΕΡΜΙΚΗΣ ΚΑΙ ΣΤΑΤΙΣΤΙΚΗΣ ΦΥΣΙΚΗΣ

α n z n = 1 + 2z 2 + 5z 3 n=0

ΠΑΡΑΔΕΙΓΜΑΤΑ ΘΕΜΑ Β. 2x 1. είναι Τότε έχουμε: » τον χρησιμοποιούμε κυρίως σε θεωρητικές ασκήσεις.

Συνήθεις Διαφορικές Εξισώσεις Ι Ασκήσεις - 19/10/2017. Ακριβείς Διαφορικές Εξισώσεις-Ολοκληρωτικοί Παράγοντες. Η πρώτης τάξης διαφορική εξίσωση

Κεφάλαιο 3 ΠΑΡΑΓΩΓΟΣ. 3.1 Η έννοια της παραγώγου. y = f(x) f(x 0 ), = f(x 0 + x) f(x 0 )

B = {x A : f(x) = 1}.

, για κάθε n N. και P είναι αριθμήσιμα.

P (A B) = P (AB) P (B) P (A B) = P (A) P (A B) = P (A) P (B)

Transcript:

ΕΦΑΡΜΟΓΕΣ ΤΩΝ ΜΑΡΚΟΒΙΑΝΩΝ ΑΛΥΣΙΔΩΝ 1 Εισαγωγή Στο κεφάλαιο αυτό θα δούμε μερικές εφαρμογές των μαρκοβιανών αλυσίδων στις σύγχρονες επιστήμες και στην τεχνολογία. Αφού εισαγάγουμε την έννοια της ακριβούς ισορροπίας (detailed balance) και το πώς αυτή μπορεί να μας βοηθήσει να βρούμε κατανομές ισορροπίας μαρκοβιανών αλυσίδων, θα δούμε γιατί η μηχανή αναζήτησης της εταιρείας Google κυριάρχησε στην αγορά όταν εμφανίστηκε αξιοποιώντας μια πολύ απλή ιδέα εμπνευσμένη από μαρκοβιανές αλυσίδες. Στην συνέχεια θα γνωρίσουμε την μέθοδο Monte Carlo με μαρκοβιανές αλυσίδες (MCMC), και τον πολύ σημαντικό αλγόριθμο Metropolis-Hastings που έφεραν επανάσταση στην υπολογιστική προσομοίωση. Τέλος θα γνωρίσουμε την τεχνική της προσομοιωμένης ανόπτησης (simulated annealing), και πώς μπορούμε να την χρησιμοποιήσουμε για να προσεγγίσουμε δύσκολα προβλήματα βελτιστοποίησης, όπως π.χ. το διάσημο πρόβλημα του πλανόδιου πωλητή από την πληροφορική. 2 Χρονική αντιστρεψιμότητα και ακριβής ισορροπία Ας θεωρήσουμε μια μαρκοβιανή αλυσίδα {X n } n N0 που εξελίσσεται σε έναν αριθμήσιμο χώρο καταστάσεων X και βρίσκεται στην κατάσταση ισορροπίας της με κατανομή π. Οπως έχουμε εξηγήσει, η κατάσταση ισορροπίας μιας μαρκοβιανής αλυσίδας είναι μια κατάσταση δυναμικής ισορροπίας. Η αλυσίδα εξελίσσεται στον χρόνο αλλά με τέτοιο τρόπο ώστε η κατανομή της να μένει σταθερή. Ας κάνουμε τώρα το ακόλουθο νοητικό πείραμα. Ας υποθέσουμε πως κινηματογραφούμε την αλυσίδα για κάποιο χρόνο και έπειτα παίζουμε την ταινία που τραβήξαμε ανάποδα. Πώς μοιάζει η δυναμική της αλυσίδας όταν ο χρόνος κυλάει ανάποδα; Την απάντηση σε αυτό το ερώτημα δίνει το παρακάτω θεώρημα. Θεώρημα 1 Εστω {X n } n N0 μια μη υποβιβάσιμη στάσιμη μαρκοβιανή αλυσίδα, με κατανομή ισορροπίας π. Για τον χρόνο N N ορίζουμε την ακολουθία {Y n } 0 n N με Y n = X N n. Τότε η {Y n } n είναι επίσης μια στάσιμη μαρκοβιανή αλυσίδα με κατανομή π, αλλά με πιθανότητες μετάβασης ˆp(, ) που δίνονται από την σχέση ˆp(x, y) = π(y) p(y, x), x, y X. (1) π(x) Απόδειξη: Οι ˆp είναι καλά ορισμένες αφού όπως έχουμε δει για την αναλλοίωτη κατανομή π μιας στάσιμης αλυσίδας έχουμε π(x) > 0 για κάθε x X. Επίσης, είναι πιθανότητες μετάβασης αφού ˆp(x, y) 0 για κάθε x, y X, ενώ ˆp(x, y) = 1 π(y)p(y, x) = 1 x X, π(x) αφού η π( ) είναι αναλλοίωτη κατανομή για την {X n } n. Θα δούμε τώρα ότι οι ˆp είναι οι πιθανότητες μετάβασης για την {Y n }. Πράγματι, για k {1, 2,..., N} έχουμε P [ Y 0 = y 0, Y 1 = y 1,..., Y k = y k = P [ XN k = y k,..., X N 1 = y 1, X N = y 0 = P [ X N k = y k P [ XN k+1 = y k 1 X N k = y k P [ XN = y 0 X N 1 = y 1 = π(y k ) p(y k, y k 1 ) p(y 1, y 0 ) = π(y 0 ) ˆp(y 0, y 1 ) ˆp(y k 1, y k ), όπου η τελευταία ισότητα προκύπτει από τον ορισμό (1) των ˆp. Τέλος, για κάθε x X έχουμε p(x, y) = π(x), π(y) ˆp(y, x) = π(x) 1

άρα η κατανομή π είναι αναλλοίωτη για την {Y n } n, και εφόσον η κατανομή της Y k = X N k για κάθε k {1, 2,..., N} είναι π, η {Y n } n είναι στάσιμη. Αν η κατανομή π ικανοποιεί την π(x) p(x, y) = π(y) p(y, x) x, y X (2) τότε από την σχέση (1) έχουμε ότι ˆp = p και άρα η {Y n } n, η χρονική αντιστροφή της {X n } n, έχει την ίδια στάσιμη κατανομή και τις ίδιες πιθανότητες μετάβασης όπως και η {X n } n. Μ άλλα λόγια αν κινηματογραφήσουμε την {X n } n δεν θα μπορούμε με την αναπαραγωγή του φιλμ να διακρίνουμε τη φορά του χρόνου. Οταν ικανοποιείται η (2) λέμε ότι η κατανομή π και οι πιθανότητες μετάβασης p βρίσκονται σε ακριβή ισορροπία (detailed balance), και ότι η αλυσίδα είναι χρονικά αντιστρέψιμη (time reversible.) Τα περισσότερα ενδιαφέροντα φυσικά συστήματα ικανοποιούν τις συνθήκες ακριβούς ισορροπίας (2). Ενας από τους λόγους για τους οποίους οι συνθήκες αυτές είναι ιδιαίτερα χρήσιμες είναι ότι, όταν ικανοποιούνται, μας επιτρέπουν να εντοπίσουμε μια αναλλοίωτη κατανομή π πιο εύκολα από τις συνθήκες ορισμού της π(x) = π(y) p(y, x) x X. (3) Πράγματι, όπως φαίνεται από την (2), οδηγούν σε απλούστερες εξισώσεις για την π, που σύμφωνα με το ακόλουθο Λήμμα όταν έχουν λύση, αυτή είναι πάντα αναλλοίωτη κατανομή. Λήμμα 1 Αν η κατανομή π και οι πιθανότητες μετάβασης p βρίσκονται σε ακριβή ισορροπία, τότε η π είναι αναλλοίωτη κατανομή για την μαρκοβιανή αλυσίδα με πιθανότητες μετάβασης p. Απόδειξη: Για κάθε x X έχουμε π(y)p(y, x) (2) = π(x) p(x, y) = π(x) p(x, y) = π(x). Παράδειγμα 1 Στο μοντέλο διάχυσης του Ehrenfest N σωματίδια τοποθετούνται σε ένα δοχείο με δύο διαμερίσματα, Α και Β. Σε κάθε βήμα επιλέγουμε τυχαία ένα από τα N σωματίδια και του αλλάζουμε διαμέρισμα. Αν {X n } n N0 είναι η μαρκοβιανή αλυσίδα στον χώρο καταστάσεων X = {0, 1,..., N} που περιγράφει το πλήθος των σωματιδίων στο διαμέρισμα Α, τότε οι πιθανότητες μετάβασης αυτής της αλυσίδας είναι p(k, k + 1) = N k N και p(k, k 1) = k N k X. Πράγματι για να αυξηθεί κατά 1 το πλήθος των σωματιδίων στο διαμέρισμα Α θα πρέπει να επιλέξουμε ένα από τα σωματίδια του διαμερίσματος Β για να του αλλάξουμε διαμέρισμα. Αν στο διαμέρισμα Α υπάρχουν k σωματίδια τότε στο διαμέρισμα Β υπάρχουν N k και άρα η πιθανότητα να επιλέξουμε ένα από τα N k σωματίδια του Β είναι N. Ομοίως για να μειωθεί κατά 1 το πλήθος των σωματιδίων στο διαμέρισμα Α θα πρέπει το σωματίδιο που θα επιλέξουμε για να του αλλάξουμε διαμέρισμα να προέρχεται από το Α, ενδεχόμενο που έχει πιθανότητα k N όταν στο Α υπάρχουν k σωματίδια. Είναι φανερό ότι η {X n } n είναι μη υποβιβάσιμη και άρα θα έχει μοναδική αναλλοίωτη κατανομή π. Αν 2

επιχειρήσουμε να προσδιορίσουμε την π από τις εξισώσεις (3) θα οδηγηθούμε σε μια μη γραμμική αναδρομική εξίσωση δεύτερης τάξης που θέλει αρκετό κόπο για να λυθεί. Δοκιμάστε το για εξάσκηση. Αν αντίθετα επιχειρήσουμε να βρούμε κάποια κατανομή π στον X που βρίσκεται σε ακριβή ισορροπία με τις πιθανότητες μετάβασης p θα πάρουμε τις εξισώσεις π(k) p(k, k + 1) = π(k + 1) p(k + 1, k) k {0, 1,..., N 1}, ή ισοδύναμα π(k + 1) = N k k {0, 1,..., N 1}. π(k) k Πολλαπλασιάζοντας τις σχέσεις αυτές για k = 0, 1,..., n 1 λαμβάνουμε ότι ( ) N π(n) = π(0) n X, n ενώ από τη συνθήκη κανονικοποίησης N ( ) N π(n) = 1 έχουμε ότι π(0) = π(0)2 N = 1. Επομένως, n n X n=0 ( ) N π(n) = 2 N n X. n Παράδειγμα 2 : Τυχαίος περίπατος σε γράφο Εστω {X n } n ένας περίπατος στις κορυφές V ενός συνεκτικού, μη προσανατολισμένου γράφου. Σε κάθε βήμα ο περιπατητής επιλέγει τυχαία μια από τις ακμές της κορυφής που βρίσκεται και μεταβαίνει στην άλλη κορυφή αυτής της ακμής. Αν ο περιπατητής μας βρίσκεται σε μια κορυφή x V με βαθμό v(x), τότε όλες οι v(x) κορυφές που συνδέονται με την κορυφή x είναι ισοπίθανες ως επόμενος προορισμός. Επομένως, αν E είναι το σύνολο των ακμών του γράφου, οι πιθανότητες μετάβασης της αλυσίδας δίνονται από την p(x, y) = { 1 v(x) αν (x, y) E 0 αν (x, y) / E. Εφόσον ο γράφος είναι συνεκτικός (ανάμεσα σε οποιεσδήποτε δυο κορυφές υπάρει ένα μονοπάτι, του οποίου οι διαδοχικές κορυφές συνδέονται με ακμές) η αλυσίδα είναι μη υποβιβάσιμη και έχει επομένως μοναδική αναλλοίωτη κατανομή π, την οποία θέλουμε να προσδιορίσουμε. Από την (4) προκύπτει άμεσα ότι v(x) p(x, y) = v(y) p(y, x) = χ E (x, y) x, y V, όπου χ E (x, y) = 1 αν (x, y) E και 0 διαφορετικά. Επομένως, αν για κάποια σταθερά c έχουμε π(x) = cv(x) x V, τότε η π βρίσκεται σε ακριβή ισορροπία με τις πιθανότητες μετάβασης p. Η σταθερά c θα προσδιοριστεί από τη συνθήκη κανονικοποίησης 1 = x V π(x) = c x V v(x) = 2c E, όπου E είναι το πλήθος των ακμών του γράφου. Η τελευταία ισότητα προκύπτει γιατί κάθε ακμή προστίθεται στο άθροισμα δύο φορές, μια για κάθε κορυφή στην οποία καταλήγει. Άρα π(x) = v(x) 2 E x V. Ενας ακόμα πολύ σημαντικός λόγος για τον οποίο οι συνθήκες ακριβούς ισορροπίας είναι πολύ χρήσιμες είναι ότι μας δίνουν την δυνατότητα να κατασκευάσουμε μια μαρκοβιανή αλυσίδα με επιθυμητή αναλλοίωτη κατανομή, όπως θα δούμε παρακάτω στον αλγόριθμο Metropolis-Hastings. Πρώτα όμως θα ρίξουμε μια ματιά στα μαθηματικά πίσω από τη μηχανή αναζήτησης της Google. 3 (4)

3 Μια κατανομή αξίας δισεκατομμυρίων Οι μεγαλύτεροι σε ηλικία από τους αναγνώστες θα θυμούνται ότι πριν την εμφάνιση της Google οι μηχανές αναζήτησης δεν ήταν τόσο ακριβείς. Στα αποτελέσματα που επέστρεφαν υπήρχαν πολλές σελίδες που δεν είχαν καμμιά σχέση με την αναζήτηση, και συχνά χρειαζόταν να δει κανείς αρκετές σελίδες α- ποτελεσμάτων για να βρει σελίδες με χρήσιμο περιεχόμενο. Οταν η Google εμφανίστηκε στην αγορά (1997) και εισήγαγε τη δική της μηχανή αναζήτησης, τα αποτελέσματα ήταν εντυπωσιακά καλύτερα α- πό ό,τιδήποτε υπήρχε μέχρι τότε. Πολύ σύντομα η συντριπτική πλειοψηφία των χρηστών του διαδικτύου χρησιμοποιούσε αυτήν, βάζοντας έτσι τις βάσεις για να γίνει η Google ο κολοσσός που γνωρίζουμε σήμερα. Το μυστικό της επιτυχίας της συγκεκριμένης μηχανής ήταν ένας αλγόριθμος που χρησιμοποιούσε για να αξιολογεί τις ιστοσελίδες και να προτάσσει στα αποτελέσματα της αναζήτησης εκείνες που αξιολογούνταν ως πιο σημαντικές. Ο αλγόριθμος αυτός είναι ο PageRank TM, και παρά τις τροποποιήσεις που έχει υποστεί από τότε η βασική του ιδέα είναι εξαιρετικά απλή και παραμένει επίκαιρη ακόμα και σήμερα (2014). Φανταστείτε έναν περιηγητή του διαδικτύου που σε κάθε του βήμα επιλέγει τυχαία έναν από τους συνδέσμους που υπάρχουν στη σελίδα που βρίσκεται και μεταβαίνει εκεί. Μπορούμε να φανταστούμε την περιήγηση αυτή σαν μια μαρκοβιανή αλυσίδα στο σύνολο V των ιστοσελίδων του διαδικτύου με πιθανότητες μετάβασης { 1 v q(x, y) = o(x) αν υπάρχει σύνδεσμος από την σελίδα x προς την σελίδα y, 0 διαφορετικά, όπου v o (x) είναι το πλήθος των συνδέσμων από την σελίδα x προς άλλες σελίδες. Ο χώρος καταστάσεων είναι τεράστιος, αλλά πεπερασμένος. Ας υποθέσουμε για λίγο ότι η αλυσίδα αυτή είναι μη υποβιβάσιμη, οπότε θα έχει μοναδική αναλλοίωτη κατανομή π. Αυτή η υπόθεση είναι ισοδύναμη με το ότι ο περιηγητής μας μπορεί να φτάσει από οποιαδήποτε σελίδα του διαδικτύου σε οποιαδήποτε άλλη μέσα από ένα μονοπάτι διαδοχικών συνδέσμων. Κάτι τέτοιο δεν είναι ρεαλιστικό αφού λ.χ. υπάρχουν σελίδες χωρίς εξωτερικούς συνδέσμους, θα μας βοηθήσει όμως να καταλάβουμε γιατί το βάρος π(x) που αποδίδει στην σελίδα x η αναλλοίωτη κατανομή π είναι ένας πολύ καλός δείκτης σημαντικότητας της σελίδας x. Στην συνέχεια θα άρουμε τον περιορισμό της μη υποβιβασιμότητας. Πράγματι, το εργοδικό θεώρημα μας εξασφαλίζει το ποσοστό του χρόνου θα ξοδεύει ο περιηγητής μας στην σελίδα x είναι ασυμπτωτικά π(x). Συγκεκριμένα, αν N n (x) είναι το πλήθος των επισκέψεων του περιηγητή στην σελίδα x στα πρώτα n βήματά του, τότε [ N n (x) P lim = π(x), x V = 1. n n Μ αυτήν την έννοια λοιπόν η κατανομή π είναι ένας δείκτης σημαντικότητας. Μπορούμε επίσης να φανταστούμε ότι η σημαντικότητα σ(x) μιας σελίδας x προσδιορίζεται εμμέσως από την σημαντικότητα των σελίδων που έχουν συνδέσμους προς την x. Αυτό είναι διαισθητικά επιθυμητό, αφού ένας σύνδεσμος από την ιστοσελίδα της Yahoo ενδεχομένως βαρύνει περισσότερο σε σχέση με έναν σύνδεσμο από κάποιο άγνωστο ιστολόγιο. Θα θέλαμε επίσης η σημαντικότητα μιας σελίδας να επιμερίζεται στις σελίδες προς τις οποίες παρέχει συνδέσμους, ώστε σημαντικές σελίδες με πολλούς συνδέσμους να βαρύνουν συνολικά όσο εξίσου σημαντικές σελίδες με λίγους εξωτερικούς συνδέσμους. Τις προδιαγραφές αυτές μπορούμε να τις γράψουμε συνοπτικά ως εξής: σ(x) = y x σ(y) v 0 (y) x V. (5) 4

Η παραπάνω σχέση απλά μας λέει ότι η σημαντικότητα της σελίδας x προκύπτει αν αθροίσουμε τις σημαντικότητες των σελίδων y που παρέχουν συνδέσμους προς την x, με βάρη αντιστρόφως ανάλογα του πλήθους v 0 (y) των συνδέσμων τους. Αυτός ο ορισμός της σημαντικότητας είναι αυτοαναφορικός, αφού για να ορίσουμε την σημαντικότητα μιας ιστοσελίδας χρησιμοποιούμε την σημαντικότητα άλλων σελίδων. Δεν είναι λοιπόν εκ των προτέρων φανερό γιατί οι εξισώσεις (5) έχουν λύση. Μπορούμε όμως να ξαναγράψουμε τις εξισώσεις αυτές ως εξής σ(x) = σ(y) q(y, x) x V. y V Αν επιπλέον θελήσουμε να κανονικοποιήσουμε την συνολική σημαντικότητα όλων των ιστοσελίδων στην μονάδα, δηλαδή σ(x) = 1, x V βλέπουμε ότι αυτές είναι ακριβώς οι εξισώσεις που ορίζουν την μοναδική αναλλοίωτη κατανομή π της μαρκοβιανής αλυσίδας μας. Άρα όχι μόνο έχουν λύση, αλλά η λύση αυτή είναι μοναδική και είναι η π. Ελπίζω τα παραπάνω επιχειρήματα να σας έχουν πείσει ότι αν ο τυχαίος περίπατος στο διαδίκτυο που περιγράψαμε αντιστοιχούσε σε μια μη υποβιβάσιμη αλυσίδα, τότε η αναλλοίωτη κατανομή της θα ήταν ένας πολύ καλός δείκτης σημαντικότητας. Οπως προείπαμε όμως, αυτός ο περιορισμός είναι πολύ ισχυρός. Για να τον άρουμε τροποποιούμε την περιήγηση μας ως εξής. Πριν από κάθε μας βήμα στρίβουμε ένα κέρμα που φέρνει κεφαλή με πιθανότητα α (0, 1). Αν το κέρμα έρθει κεφαλή τότε όπως και πριν επιλέγουμε τυχαία μια από τις ιστοσελίδες προς τις οποίες υπάρχει σύνδεσμος και μεταβαίνουμε σε αυτήν. Αν το κέρμα έρθει γράμματα τότε επιλέγουμε τυχαία μια από όλες τις σελίδες του διαδικτύου και μεταβαίνουμε εκεί. Αν V είναι το πλήθος των ιστοσελίδων του διαδικτύου, η παραπάνω περιήγηση αντιστοιχεί σε μια μαρκοβιανή αλυσίδα στο V με πιθανότητες μετάβασης p(x, y) = α q(x, y) + (1 α) V x, y V. Η αλυσίδα αυτή είναι μη υποβιβάσιμη για κάθε α < 1, και ο δείκτης PageRank TM είναι στην ουσία η αναλλοίωτη κατανομή αυτής της αλυσίδας για την επιλογή α = 0, 85. 4 Ο αλγόριθμος Metropolis-Hastings και το μοντέλο Ising Η κλασική μέθοδος Monte Carlo χρησιμοποιεί τον νόμο τον μεγάλων αριθμών για να υπολογίσει την μέση τιμή ως προς κάποια κατανομή π σαν ένα μέσο όρο ανεξάρτητων δειγμάτων. Συγκεκριμένα, αν X 1, X 2,... είναι ανεξάρτητες, ισόνομες, τυχαίες μεταβλητές με κατανομή π ο νόμος των μεγάλων αριθμών εξασφαλίζει ότι [ P lim N f(x 1 ) + f(x 2 ) + + f(x N ) N = E π[ f = 1. Συνηθως χρησιμοποιεί κανείς την μέθοδο Monte Carlo για να υπολογίσει την αναμενόμενη τιμή E π[ f προσομοιώνοντας ανεξάρτητα δείγματα X 1, X 2,..., X N από την κατανομή π και παίρνοντας τον μέσο όρο των f(x i ). Ο νόμος των μεγάλων αριθμών μας εξασφαλίζει ότι (σχεδόν βεβαίως) όταν το N είναι μεγάλο οι δύο ποσότητες είναι κοντά, ενώ το κεντρικό οριακό θεώρημα μπορεί να μας δώσει εκτιμήσεις για το τυπικό σφάλμα της προσέγγισης. Σε πολλές ενδιαφέρουσες εφαρμογές το να πάρει κανείς δείγματα από την κατανομή π είναι εξαιρετικά δύσκολο. Αυτό μπορεί να συμβεί γιατί ο χώρος X στον οποίο έχει οριστεί η κατανομή π είναι πολύπλοκος 5

και η κατανομή π δεν είναι ακριβώς γνωστή. Η μέθοδος Markov Chain Monte Carlo (MCMC) προσομοιώνει την π σαν την κατανομή ισορροπίας μιας μαρκοβιανής αλυσίδας. Το να προσομοιώσουμε την μαρκοβιανή αλυσίδα είναι συνήθως πολύ εύκολο αφού η δεσμευμένη κατανομή της X n+1 δεδομένης της X n δίνεται από τις πιθανότητες μετάβασης της αλυσίδας. Χρειάζεται όμως να κατασκευάσουμε κατάλληλες πιθανότητες μετάβασης που θα μας εξασφαλίζουν ότι η {X n } έχει κατανομή ισορροπίας την π. Το πρόβλημα αυτό δεν έχει μοναδική λύση, αλλά μια από τις πιο επιτυχημένες προσεγγίσεις είναι ο αλγόριθμος Metropolis-Hastings. Ο αλγόριθμος αυτός μπορεί να περιγραφεί ως εξής. Χωρίς βλάβη της γενικότητας μπορούμε να υποθέσουμε ότι π(x) > 0 για κάθε x X. Θεωρούμε έναν περίπατο στο X με συμμετρικές πιθανότητες μετάβασης r(x, y) = r(y, x) από την κατάσταση x στην κατάσταση y. Αν κάποια στιγμή βρισκόμαστε στην κατάσταση x X επιλέγουμε την υποψήφια επόμενη κατάσταση y x με πιθανότητα r(x, y). Στη συνέχεια αποφασίζουμε αν θα μεταβούμε στην y, με πιθανότητα να το κάνουμε ίση με π(y) π(y) π(x) 1 = min{ π(x), 1}. Η πιθανότητα μετάβασης από την x στην y x είναι το γινόμενο της πιθανότητας να επιλέξουμε την y σαν υποψήφια επόμενη κατάσταση με την πιθανότητα να πραγματοποιήσουμε την μετάβαση δεδομένου ότι επιλέξαμε την y, δηλαδή ( ) π(y) p(x, y) = r(x, y) π(x) 1 όπου N = X. Επομένως η πιθανότητα να παραμείνουμε στην κατάσταση x είναι p(x, x) = 1 y x p(x, y). y x, (6) Παρατηρήστε ότι αν η π δεν είναι η ομοιόμορφη κατανομή στον X τότε υπάρχουν x, y X με π(y) < π(x) και r(x, y) > 0. Επομένως, p(x, x) > 1 y x r(x, y) 0, και άρα η αλυσίδα που κατασκευάσαμε είναι απεριοδική. Η κατανομή π που θέλουμε να προσομοιώσουμε και οι πιθανότητες μετάβασης που ορίσαμε με τις παραπάνω σχέσεις βρίσκονται σε ακριβή ισορροπία. Πράγματι, για x y έχουμε π(x) p(x, y) = π(x)r(x, y) ( ) π(y) π(x) 1 = r(x, y) ( π(y) π(x) ) ( = π(y)r(y, x) 1 π(x) ) = π(y) p(y, x). π(y) Σύμφωνα με το Λήμμα 1, η π είναι αναλλοίωτη κατανομή της αλυσίδας {X n } με πιθανότητες μετάβασης p(, ). Επιπλέον, η {X n } είναι μη υποβιβάσιμη αφού ο περίπατος που ορίζουν οι πιθανότητες μετάβασης r(, ) είναι μη υποβιβάσιμος. Επομένως όπως είδαμε στο προηγούμενο κεφάλαιο των οριακών θεωρημάτων έχουμε P [ X n = x n π(x). Ενα κλασικό παράδειγμα κατανομών που παρουσιάζουν μεγάλο ενδιαφέρον και συχνά είναι δύσκολο να προσομοιωθούν είναι οι κατανομές Gibbs. Αυτές εμφανίζονται φυσικά σε συστήματα που βρίσκονται σε κατάσταση θερμοδυναμικής ισορροπίας σε θερμοκρασία T, οπότε η πιθανότητα να βρούμε ένα τέτοιο σύστημα σε μια κατάσταση x με ενέργεια H(x) είναι π(x) = 1 Z(β) e βh(x). 6

Στην παραπάνω σχέση β = 1 KT είναι ο παράγοντας Boltzmann, ενώ η σταθερά Z(β) είναι μια σταθερά κανονικοποίησης που δίνεται από την σχέση Z(β) = x X e βh(x). Συχνά είναι δύσκολο να υπολογιστεί το παραπάνω άθροισμα. Σ ένα απλό μοντέλο μαγνήτισης για παράδειγμα μπορούμε να έχουμε σωματίδια στις κορυφές ενός τετραγωνικού πλέγματος L L που μπορούν να έχουν σπιν +1 ή -1. Η κατάσταση του συστήματος x περιγράφεται από το σπιν σε κάθε κορυφή του πλέγματος, επομένως ο χώρος καταστάσεων X έχει πληθάριθμο 2 L2. Για ένα πλέγμα 100 100 ατόμων ο X αριθμεί 2 10000 10 3000 καταστάσεις. Αυτός είναι ένας τεράστιος αριθμός. Τα άτομα στο σύμπαν εκτιμάται ότι είναι της τάξης του 10 80. Παρότι λοιπόν η συνάρτηση ενέργειας του συστήματος H μπορεί να είναι γνωστή, είναι συχνά δύσκολο να πάρει δείγματα από την κατανομή π γιατί δεν μπορεί να υπολογίσει το άθροισμα στον ορισμό της Z. Στον αλγόριθμο Metropolis-Hastings έχουμε το πλεονέκτημα ότι δεν χρειάζεται να γνωρίζουμε την Z για να προσομοιώσουμε την αλυσίδα, αφού οι πιθανότητες μετάβασης p(x, y) εξαρτώνται μόνο από τον λόγο π(y) π(x). Συγκεκριμένα, οι πιθανότητες μετάβασης είναι για x y ( ) ( ) ) ( ) π(y) + p(x, y) = r(x, y) π(x) 1 = r(x, y) (e β H(y) H(x) 1 = r(x, y)e β H(y) H(x). Μπορούμε να επιλέξουμε τις r(x, y) να είναι 0, εκτός αν οι καταστάσεις x, y διαφέρουν μόνο ως προς το σπιν μιας από τις L 2 θέσεις, οπότε r(x, y) = 1/L 2. Σ αυτήν την περίπτωση, ο αλγόριθμος Metropolis-Hastings θα ήταν ως εξής: 1. Επιλέγουμε τυχαία ένα σωματίδιο στο πλέγμα. 2. Υπολογίζουμε πόσο μεταβάλλεται η ενέργεια του συστήματος αν αλλάξουμε το σπιν αυτού του σωματιδίου. Αν x είναι η παρούσα κατάσταση και y αη κατάσταση που προκύπτει αν αλλάξουμε το σπιν του σωματιδίου που επιλέξαμε στο βήμα 1, υπολογίζουμε την διαφορά H = H(y) H(x). 3. Αν H 0 αλλάζουμε το σπιν του σωματιδίου και η νέα κατάσταση γίνεται η y. Αν H > 0 τότε αλλάζουμε το σπιν του σωματιδίου με πιθανότητα e β H, διαφορετικά παραμένουμε στην κατάσταση x. 4. Επιστρέφουμε στο βήμα 1. 7

Στον διπλανό κώδικα σε γλώσσα Python υλοποιούμε τον αλγόριθμο για το μοντέλο Ising όπου η ενέργεια του συστήματος στην κατάσταση x δίνεται από την σχέση H(x) = x(i)x(j). i j Στην παραπάνω σχέση x(i), x(j) { 1, +1} είναι τα σπιν της κατάστασης x στις θέσεις i, j αντίστοιχα, ενώ ο συμβολισμός i j δείχνει ότι η άθροιση εκτείνεται σε ζευγάρια σωματιδίων που γειτνιάζουν στο πλέγμα. Το πλέγμα που χρησιμοποιούμε στον κώδικα έχει L = 128, ενώ ο παράγοντας Boltzmann είναι β = 1/3. Προσέξτε ότι εφόσον β > 0 το μέτρο Gibbs π αποδίδει μεγαλύτερη πιθανότητα σε καταστάσεις που έχουν χαμηλή ενέργεια. Στον υπολογισμό της ενέργειας μιας κατάστασης x στο μοντέλο Ising κάθε ζευγάρι γειτονικών σωματιδίων συνεισφέρει -1 αν τα import random, math, pylab def x_y(k, L): y = k // L x = k - y * L return x, y L = 128 N = L * L nbr = {i : ((i // L) * L + (i + 1) % L, (i + L) % N, (i // L) * L + (i - 1) % L, (i - L) % N) \ for i in range(n)} T = 3.0 S = [random.choice([1, -1) for k in range(n) nsteps = N * 100 beta = 1.0 / T for step in range(nsteps): k = random.randint(0, N - 1) delta_e = 2.0 * S[k * sum(s[nn for nn in nbr[k) if random.uniform(0.0, 1.0) < math.exp(-beta * delta_e): S[k *= -1 conf = [[0 for x in range(l) for y in range(l) for k in range(n): x, y = x_y(k, L) conf[x[y = S[k pylab.close() pylab.imshow(conf, extent = [0, L, 0, L, interpolation= nearest ) pylab.title( Local_ + str(t) + _ + str(l)) pylab.show() σπιν τους έχουν τον ίδιο προσανατολισμό και +1 αν έχουν αντίθετο. Άρα καταστάσεις όπου γειτονικά σωματίδια έχουν το ίδιο σπιν είναι πιο πιθανές, γιαυτό και το μοντέλο Ising είναι ένα μοντέλο σιδηρομαγνητισμού. Προσέξτε ότι επειδή r(x, y) 0 μόνο αν τα σπιν των καταστάσεων x, y διαφέρουν σε μια μόνο θέση, δεν είναι ανάγκη να υπολογίσουμε ολόκληρη την συνάρτηση ενέργειας στο 2ο βήμα παραπάνω. Συγκέκριμένα, αν για κάποιο k στο πλέγμα { y = σ k x(j) j k x, δηλαδή y(j) = x(j) j = k τότε H = H(y) H(x) = i j y(i)y(j) + i j x(i)x(j) = 2x(k) Ας μελετήσουμε τώρα τον ρόλο του παράγοντα Boltzmann. Θυμηθείτε ότι π(x) = e βh(x) e βh(y). j: j k x(j). Για β, δηλαδή όταν η θερμοκρασία T 0 η κατανομή π τείνει να συγκεντρωθεί στις καταστάσεις με την μικρότερη δυνατή ενέργεια, που δεν είναι παρά οι δύο καταστάσεις x + και x όπου όλα τα σπιν έχουν τον ίδιο προσανατολισμό, όλα +1 στην κατάσταση x +, ή όλα -1 στην κατάσταση x. Συγκεκριμένα, π(x + ) 1 2, π(x ) 1 2 καθώς β. Αντίθετα για β = 0 (άπειρη θερμοκρασία) όλες οι καταστάσεις έχουν την ίδια πιθανότητα π(x) = 1 X = 2 L2. Βλέπουμε λοιπόν ότι καθώς θερμαίνουμε το σύστημα από τη θερμοκρασία T = 0 στη θερμοκρασία T = το σύστημα μεταβαίνει από μια κατάσταση πλήρους οργάνωσης (όλα τα σπιν προσανατολισμένα) σε μια κατάσταση πλήρους αταξίας (όλες οι διαμορφώσεις σπιν ισοπίθανες.) 8

Στο παρακάτω σχήμα βλέπουμε δείγματα από την κατανομή π που έχουμε πάρει με τη βοήθεια του αλγορίθμου μας για β = 1/3 (αριστερά) και για β = 1 (δεξιά.) Τα μαύρα pixel αντιστοιχούν σε σωματίδια με σπιν +1 ενώ τα άσπρα σε σωματίδια με σπιν -1. Επιβεβαιώνουμε αριθμητικά έτσι ότι σε χαμηλές θερμοκρασίες (δεξιά) τα σπιν τείνουν να είναι σε συμφωνία, ενώ σε υψηλές θερμοκρασίες (αριστερά) τα σπιν φαίνονται τυχαία προσανατολισμένα. 5 Προσομοιωμένη ανόπτηση (simulated annealing) Είδαμε στο προηγούμενο παράδειγμα στο μοντέλο του Ising ότι καθώς β (καθώς ψύχουμε το σύστημα) η κατανομή Gbbs π τείνει να συγκεντρωθεί στις καταστάσεις εκείνες όπου η ενέργεια του συστήματος ελαχιστοποιείται. Στο μοντέλο Ising οι καταστάσεις που ελαχιστοποιούν την ενέργεια είναι προφανείς. Υπάρχουν όμως παραδείγματα όπου το ελάχιστο της συνάρτησης ενέργειας H είναι εξαιρετικά δύσκολο να υπολογιστεί, όπως λ.χ. στο πρόβλημα του πλανόδιου πωλητή που πρέπει να επισκεφτεί μια σειρά από πόλεις και θέλει να βρει την σειρά που θα τις επισκεφτεί ώστε να ελαχιστοποιήσει την συνολική απόσταση που θα διανύσει. Η μέθοδος της προσομοιωμένης ανόπτησης (simulated annealing) χρησιμοποιεί αυτή την ιδιότητα των μέτρων Gibbs για να υπολογίσει το ελάχιστο μιας συνάρτησης. Η ιδέα οφείλει το όνομά της σε μια τεχνική επεξεργασιας μετάλλων με σταδιακή ψύξη τους (ανόπτηση) και είναι πολύ απλή. Χρησιμοποιούμε τον αλγόριθμο Metropolis-Hastings για κάποιο αρχικό β > 0. Μετά από ένα αριθμό βημάτων ώστε η αλυσίδα μας να έχει προσεγγίσει την κατάσταση ισορροπίας που αντιστοιχεί σε αυτήν τη θερμοκρασία ανεβάζουμε την τιμή του β (ψύχουμε το σύστημα) και αφήνουμε πάλι την αλυσίδα μας να προσεγγίσει την ισορροπία. Καθώς επαναλαμβάνουμε τη διαδικασία, ανεβάζοντας σταδιακά την τιμή του β, οι καταστάσεις με χαμηλή ενέργεια γίνονται όλο και πιο πιθανές και στο όριο καθώς β η αλυσίδα μας θα βρίσκεται με μεγάλη πιθανότητα στην κατάσταση με την χαμηλότερη ενέργεια. Ο λόγος που ψύχουμε σταδιακά το σύστημα είναι για να μην το παγιδεύσουμε σε τοπικά ελάχιστα της συνάρτησης H. Ας δούμε τώρα την μέθοδο της προσομοιωμένης ανόπτησης μέσα από ένα εύκολο παράδειγμα που μπορούμε να λύσουμε και αναλυτικά. Η συνάρτηση V (x) = x4 7x3 4x2 4x + +2 4 15 5 5 9

έχει ελάχιστο στο x = 2 με V ( 2) = 2 3, και τοπικό ελάχιστο στο x = +1 με V (1) = 67/60. Θα προσπαθήσουμε να βρούμε το σημείο που λαμβάνει ελάχιστο με την μέθοδο της προσομοιωμένης ανόπτησης. import math, random V(x) 1 2 3 4 5-3 -2-1 0 1 2 x def V(x): v =.25 * x ** 4 + 7. * x ** 3 / 15.0 -.8 * x ** 2 -.8 *x + 2 return v gamma = 0.25 iter = 1000 n_plus = 0 for iteration in range(iter): T = 2.0 x = 0 delta = 0.1 step = 0 n_accept = 0 while T > 0.0001: step += 1 if step == 100: T *= (1.0 - gamma) if n_accept < 20: delta *= 0.5 step = 0 n_accept = 0 x_new = x + random.uniform(-delta, delta) if random.uniform(0.0, 1.0) < math.exp(- (V(x_new) - V(x)) / T): x = x_new n_accept += 1 if x > -2.02 and x < -1.98: n_plus += 1 print n_plus / float(iter), x, gamma Στο παραπάνω Σχήμα φαίνεται η μορφή της συνάρτησης V ( ) αριστερά, κι ένας κώδικας σε Python που υλοποιεί τον αλγόριθμο της προσομοιωμένης ανόπτησης δεξιά. Η σταθερά gamma στον κώδικα καθορίζει τον ρυθμό ανόπτησης, αφού όταν κατεβάζουμε την θερμοκρασία η νέα θερμοκρασία T είναι η προηγούμενη πολλαπλασιασμένη με 1-gamma. Το πρόγραμμα επαναλαμβάνει iter φορές τον αλγόριθμο και υπολογίζει το ποσοστό p των φορών που επιτυγχάνει να βρει το ολικό ελάχιστο, δηλαδή το -2. Άσκηση: Μεταβάλετε τον ρυθμό ανόπτησης gamma και δείτε πώς συμπεριφέρεται το ποσοστό p των επιτυχημένων προσπαθειών σαν συνάρτηση του gamma. 1. Επαληθεύστε ότι για σχετικά μεγάλες τιμές του gamma (π.χ. > 1/2) ο ο αλγόριθμος δεν βρίσκει πάντα το ολικό ελάχιστο. 2. Τροποποιήστε τον κώδικα ώστε να βλέπετε πού τερματίζει ο αλγόριθμος στις περιπτώσεις που δεν βρίσκει το ολικό ελάχιστο στο -2. Τι παρατηρείτε; 3. Επαληθεύστε ότι καθώς gamma 0 έχουμε p 1. Δηλαδή για κατάλληλα αργό ρυθμό ανόπτησης ο αλγόριθμος εντοπίζει το ολικό ελάχιστο με πιθανότητα οσοδήποτε κοντά στο 1. 4. Παραστήστε γραφικά την πιθανότητα p σαν συνάρτηση του gamma. Με αντίστοιχο τρόπο μπορούμε να επιχειρήσουμε να βρούμε το ελάχιστο και στην περίπτωση του προβλήματος του πλανόδιου πωλητή. Με δεδομένες τις θέσεις των πόλεων μπορούμε να πάρουμε σαν χώρο των καταστάσεων X της αλυσίδας μας τις κυκλικές μεταθέσεις των πόλεων που θα παριστάνουν τη σειρά με την οποία ο πωλητής επισκέπτεται τις πόλεις. Σαν ενέργεια μιας τέτοιας κατάστασης μπορούμε να πάρουμε το συνολικό μήκος του μονοπατιού που διανύουμε για επισκεπτούμε τις πόλεις με τη συγκεκριμένη σειρά. 6 Ασκήσεις Άσκηση 1 Μπορείτε να ξαναβρείτε με απλή επισκόπηση την αναλλοίωτη κατανομή της αλυσίδας του Προβλήματος 2 στο κεφάλαιο 6; 10

Άσκηση 2 Θεωρήστε μια αλυσίδα Markov στον X = {0, 1, 2,...} με p(k, k + 1) = 1 k+1, p(k, k 1) = k k+1 για κάθε k X. Βρείτε μια αναλλοίωτη κατανομή της. Είναι αυτή μοναδική; Υπόδειξη: δοκιμάστε να βρείτε μια κατανομή που ικανοποιεί τιςσυνθήκες ακριβούς ισορροπίας. Αφού την βρείτε, δοκιμάστε να λύσετε το πρόβλημα με τον ορισμό της αναλλοίωτης κατανομής. Παρατηρήστε ότι είναι πολύ πιο εύκολο να βρει κανείς την αναλλοίωτη κατανομή π μέσω των συνθηκών ακριβούς ισορροπίας, όταν η π τις ικανοποιεί. Αυτό βέβαια συμβαίνει μόνο αν η αλυσίδα είναι χρονικά αντιστρέψιμη. Άσκηση 3 Ενα αλογάκι ξεκινά από το κάτω αριστερά τετραγωνάκι μιας σκακιέρας. Σε κάθε βήμα, επιλέγει τυχαία μια από τις επιτρεπτές κινήσεις που έχει και μεταβαίνει στο αντίστοιχο τετράγωνο. Ποιος είναι ο αναμενόμενος χρόνος μέχρι την πρώτη επιστροφή του στο τετράγωνο απ όπου ξεκίνησε; Άσκηση 4 Στο δίκτυο του διπλανού σχήματος υ- πολογίστε τον δείκτη σημαντικότητας που κατασκευάσαμε στην παράγραφο 3 για κάθε κορυφή του. Άσκηση 5 Αν διατηρούσατε την σελίδα Α του διπλανού σχήματος πώς θα μπορούσατε να αυξήσετε τον δείκτη σημαντικότητάς της ώστε να εμφανίζεται πιο ψηλά σε σχετικές αναζητήσεις; Άσκηση 6 Κατασκευάστε μια μαρκοβιανή αλυσίδα στον χώρο X = {A, B, C, D} που να έχει κατανομή ισορροπίας ( π(a), π(b), π(c), π(d) ) = (1/2, 1/4, 1/6, 1/12). 11